package ${packageName}.vo;

<#-- 导入列表 -->
<#list importList as import>
import ${import};
</#list>
import io.swagger.v3.oas.annotations.media.Schema;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.experimental.Accessors;
import jakarta.validation.constraints.Max;
import jakarta.validation.constraints.Min;

<#-- 类注释 -->
/**
 * <p>
 * ${functionName}查询类
 * </p>
 *
 * @author ${author}
 * @since ${datetime}
*/
@Data
@Schema(name="${functionName}查询对象", description="${functionName}查询对象")
public class ${ClassName}Param implements Serializable {
    private static final long serialVersionUID = 1L;

<#-- 查询字段循环 -->
<#list columns as column>
    <#if column.isQuery()>
    @Schema(description = "${column.columnComment!""}")
    private ${column.javaType} ${column.javaField};

    </#if>
</#list>

    <#-- 分页参数 -->
    /**
    * 页码
    */
    @Schema(description = "页码，默认1", example = "1")
    @Min(value = 1, message = "页码最小为1")
    private Integer page;

    /**
    * 页面大小
    */
    @Schema(description = "每页数量，默认10", example = "10")
    @Min(value = 1, message = "每页数量最小为1")
    @Max(value = 100, message = "每页数量最大为100")
    private Integer pageSize;
}